package com.itlong.cloud.operate.service;

import com.itlong.cloud.POJO.DTO.operate.OperateSaveSipClusterDTO;
import com.itlong.cloud.POJO.DTO.operate.OperateSipClusterPageDTO;
import com.itlong.cloud.POJO.VO.operate.OperateSipClusterVO;
import com.itlong.cloud.utils.page.Page;

/**
 * <desc>
 *      运营-运营管理-SIP集群管理服务接口。
 * <desc/>
 *
 * @createDate 2017/9/30.
 */
public interface IOperateSipClusterService {

     /**
      * <desc>
      *      保存SIP服务器信息。
      * <desc/>
      *
      * @param  saveDTO  SIP服务器数据传输对象
      * @return  返回影响行数
      * @author shengen.T
      * @createDate 2017/9/30
      */
    Integer saveSipInfo(OperateSaveSipClusterDTO saveDTO) throws Exception;

     /**
      * <desc>
      *     修改SIP服务器信息。
      * <desc/>
      *
      * @param  saveDTO  SIP服务器数据传输对象
      * @return 返回影响行数
      * @author shengen.T
      * @createDate 2017/9/30
      */
    Integer updateSipInfo(OperateSaveSipClusterDTO saveDTO) throws Exception;

     /**
      * <desc>
      *      设置SIP服务器状态：启用/禁用。
      * <desc/>
      *
      * @param  sipId sip服务器ID
      * @param  status 状态
      * @return
      * @author shengen.T
      * @createDate 2017/9/30
      */
     /*
    Integer setSipStatus(String sipId,Integer status) throws Exception;
      */

     /**
      * <desc>
      *      根据SIP消息ID 获取详细信息。
      * <desc/>
      *
      * @param  sipId SIP服务器ID
      * @return
      * @author shengen.T
      * @createDate 2017/9/30
      */
     OperateSipClusterVO getSipInfo(String sipId) throws Exception;

     /**
      * <desc>
      *      获取SIP服务器分页信息。
      * <desc/>
      *
      * @param pageDTO 分页请求参数
      * @return 返回分页结果数据集
      * @author shengen.T
      * @createDate 2017/9/30
      */
    Page<OperateSipClusterVO> getSipInfoPage(OperateSipClusterPageDTO pageDTO) throws Exception;

}
